package com.song.onetomany.mapper;

import com.song.onetomany.pojo.Role;
import com.song.onetomany.pojo.User;
import org.apache.ibatis.annotations.*;

import java.util.List;

/**
 * @Author 宋伟宁
 * @Date 2023/9/11
 * @Version 1.0
 **/
public interface UserMapper {

      @Select("select * from t_users")
      @ResultMap("userMap")
      List<User> findUsers();

      @Select("select * from t_roles")
      List<Role> findRoles();

      /**
       * 新增用户到用户表
       * @param user
       * @return
       */
      @Insert("insert into t_users(name, age, address, in_time, pwd) VALUES (#{name},#{age},#{address},#{in_time},#{pwd})")
      @Options(useGeneratedKeys = true,keyProperty = "id")
      int addUser(User user);

      /**
       * 新增用户的角色到中间表
       * @param id
       * @param ids
       * @return
       */

      int addUserRole(@Param("uid") Integer id,@Param("ids") String[] ids);

      User findUserById(String id);

    /**
     * 修改用户时，删除原用户的中间表记录
     * @param id
     * @return
     */
    int deleteUserRloe(int id);

      int updateUser(User user);

    /**
     * 批量删除用户的中间表
     * @param arr
     * @return
     */
    int batchDelUid(@Param("arr") String[] arr);

    /**
     *
     * 批量删除用户表
     * @param arr
     * @return
     */
    int batchUser(@Param("arr") String[] arr);
}
